The present invention relates to data processing, and more particularly relates to the transfer between computing devices, and the retrieval by such devices, of document related information. Even more particularly, the invention concerns such information retrieval, transfer and processing using tokens.
While the use of portable computing devices is becoming more widespread, transfer of information between such devices is often limited due to inadequate storage capacity or communication channel bandwidth. One possible system for overcoming as these limitations is disclosed in European patent application EP-A-691,619, published Jan. 10, 1996 (hereafter xe2x80x9cEP""619xe2x80x9d), which discloses a system for transferring document identifiers representing a particular document between computers, rather than the document itself. This system can include any number workstations, file servers, printers and other fixed devices (including multifunction devices) coupled in a network, and a number of portable devices (e.g. handheld or wristwatch computer) carried by users and coupled to the network by infrared (IR) link. Each portable device is in effect a user""s personal satchel for documents, with the devices being programmed to receive, transmit, and store document identifiers (e.g. World Wide Web URLs), each of which is associated with an electronic document stored in an electronic repository at a site on the web. Documents are effectively distributed between devices by transmission of document URLs, rather than the lengthy document itself. For example, a document can be sent to an IR transceiver equipped network printer by xe2x80x9cbeamingxe2x80x9d that document""s URL from a handheld portable computer to the network printer. The network printer retrieves the complete document referenced by the URL, and immediately prints a copy.
While useful, the foregoing system may not always support operations, security measures, or parameters required by mobile workers interacting with various computational devices in the workplace. For example, a network printer beamed a document identifier might print the document as single sided using its default settings, even though the mobile worker may actually desire double sided printing. Accordingly, the present invention provides a method for supporting a wide range of digital applications that can be carried out in a data processing device that includes a processor, memory, and a user interface. In response to user input, the data processing device can generate a token comprising an operation component designating a document related operation (e.g. single sided or double sided print command), an address component designating the electronic address of a document or system providing a document related service, one or more parameter components, each parameter component defining a property of a document or a property of a service to be applied to a document, and a security parameter dependent upon the identity of a user associated with a document or with a document related service. This token is transmitted to another device (e.g. the network printer), which can check security, parameters, and modify its default operations in response to user input to the data processing device.
The invention employs xe2x80x9cSatchel Document Tokensxe2x80x9dxe2x80x94a special form of reference to a document or to a document service in portable devices, systems and methods for supporting mobile worker""s document activities. These Satchel Document Tokens are henceforth simply referred to as xe2x80x9ctokensxe2x80x9d. In accordance with the invention, tokens can be stored in small personal portable electronic devices and can be transmitted between holders of such devices. They can also be transmitted to appropriately equipped document devices (printers, scanners, copiers, faxes). Tokens contain the information necessary to access documents, to invoke a document services with appropriate parameter settings, or to initiate the actions of a document device with appropriate parameter settings. In addition, the token contains the security information which provides safeguards to ensure that unauthorized use of the documents or document services that are referenced in the token is precluded.
In preferred embodiments, a token contains at least the following components.
Basic Operation. The token specifies the particular operation that is to be performed, e.g. getting the document or performing a service (printing, scanning, faxing, converting). The action may be identified very generically here, with parameter settings used to identify the exact operation more specifically.
Address of document or document service. The token contains the information necessary to find the document or service. The address could consist of the network address of a server and the file path name of a document. A WWW Uniform Resource Locator (URL) is an example of a document address, and is used in the current Satchel prototype.
Parameters. The token contains a set of parameter settings that may be needed by subsequent services that are triggered by transmitting the token to a device. Parameters are used to further specify the document or document service (e.g. Number of copies to print). Some parameters may themselves be tokens. The specific types parameters required depends on the particular service.
Visible Name. The token contains a string or icon which can be displayed to identify the document or service to which the token refers for the benefit of the user.
Security Information. The security component of a token contains information to support ensuring that only the intended use of the token is possible.
The security information includes a digital signature of the information in the token. The digital signature is a digest of information in the token and its encryption with the document owner""s private key. This follows well known prior cryptographic art relating to public/private key cryptography (see U.S. Pat. No. 4,405,829). These signatures can only be generated by the personal portable device since only it has the private key. The signature ensures the integrity of the token and attests that the token did originate from a known portable device.
The security information can also include specified conditions that will restrict access to a document. For example, it may include (1) an expiry date beyond which access to the document is no longer granted, (2) the condition that a payment or certificate for release must be associated with the token, and/or (3) a requirement that only a given device be used to print the document.
The security information can include a recipient""s public key or name to indicate that the returned document be encrypted with the given public key or the known public key associated with the recipient""s name. This ensures that only the intended recipient of the document can make use of the returned document and that an intercepted copy of either the encrypted document or the token is of no use to anyone other than the intended recipient. More generally, information for supporting fees and usage rights such as can be expressed in more complex fees and usage rights languages (such as described in Stefik, M., xe2x80x9cLetting Loose the Light: Igniting Commerce in Electronic Publication. In Internet Dreams: Archetypes, Myths, and Metaphors. Edited by Mark Stefik. MIT Press, 1996), may be associated with the token.
Tokens which include security information are presented to xe2x80x9csecure documents serversxe2x80x9d. A secure server contains a xe2x80x9cgatekeeperxe2x80x9d which verifies signatures on tokens and examines the specified conditions associated with the token and then acts accordingly (e.g. encrypting the document with the appropriate key). The public key for verifying the signature is obtained through a parameter in the security information which identifies the owner of the document or from a server which stores users"" public keys.
As compared to conventional technology for document transfer and processing, token-based techniques in accordance with the present invention have various advantages, including:
(i) Portabilityxe2x80x94A laptop is generally too heavy to carry everywhere all the time. Tokens can fit into smaller amount of memory which will require less power, allowing the device to be even smaller. The smaller a device, the more easily it can be carried everywhere.
(ii) Serving unanticipated needsxe2x80x94If the user has forgotten to take the paper document or electronic document, he or she cannot give the document. A Satchel user can always provide a token for a document. There is no longer the burden of having to remember which documents to take.
(iii) Speedxe2x80x94A wireless transfer of a token between devices will always require less communication time than a wireless transfer of the actual document. This streamlines and speeds up the transfer transaction and improves its reliability. The lower transmission power requirements contribute to keeping the device small.
(iv) Ease of remote loginxe2x80x94When using a laptop, the user attempts to find a means to login remotely to his/her home office machine or server to access documents. This is awkward and complicated, the physical connection devices may be wrong, access to the local network may be barred (no local login), or dial-up to home office may be expensive and slow. This is alleviated by providing the security information component in the token.
(v) Document transferxe2x80x94Transferring an electronic document from one user to another is awkward, since the users must have a medium (floppy disks, which may be too small) or laptop-laptop network which will be clumsy to set up. Also, with tokens, any associated processing (e.g. format conversion) of a document can be performed when the token is submitted (xe2x80x9ccashed-inxe2x80x9d) and anywhere where applications for processing are available.
(vi) Support for dynamic documentsxe2x80x94A token can contain a reference to a document whose contents change (e.g. a weather forecast). The user can thus give a token for xe2x80x9che latest versionxe2x80x9d of a document. This is not possible with a static copy of the document from paper, laptop or floppy.
(vii) Security improvementxe2x80x94The loss or theft of the device doesn""t mean documents are immediately accessible, only tokens. The secure server can be instructed to no longer honor tokens from the device (analogous to revoking a credit card). In the case of using a laptop or floppy, either the data is stolen, or the user must ensure all data on the laptop is encrypted.
A further benefit is in the enablement of diverse document-related activities, examples of which are given below.
(i) Tradable services. By encapsulating services in tokens, they can be passed on and distributed just like document tokens.
(ii) Partially Specified Services: The service may only be partially specified in the token. A simple example of a partially specified document service is one which prints a given document in a particular way on a printer (e.g. duplex two-up). The remaining specification of the service (e.g. the actual printer, the number of copies) may not yet be specified, but the token can nonetheless be passed from one user to another. The recipient can then use it as a known, reliable, and easy way of having a specific service performed, with their choice of further options.
(iii) Network supplied processing: The burden is on the token-enabled servers on the network to get the desired action performed, not on the limited personal device. By using tokens, neither the data nor the application of the document need be locally present, either on the portable device itself or at any local server. Service execution and invoking applications for particular data formats can be performed where the appropriate software is available.
Additional functions, objects, advantages, and features of the present invention will become apparent from consideration of the following description and drawings of preferred embodiments.